home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / dlatrz.z / dlatrz
Encoding:
Text File  |  2002-10-03  |  4.6 KB  |  133 lines

  1.  
  2.  
  3.  
  4. DDDDLLLLAAAATTTTRRRRZZZZ((((3333SSSS))))                                                          DDDDLLLLAAAATTTTRRRRZZZZ((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DLATRZ - factor the M-by-(M+L) real upper trapezoidal matrix [ A1 A2 ] =
  10.      [ A(1:M,1:M) A(1:M,N-L+1:N) ] as ( R 0 ) * Z, by means of orthogonal
  11.      transformations
  12.  
  13. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  14.      SUBROUTINE DLATRZ( M, N, L, A, LDA, TAU, WORK )
  15.  
  16.          INTEGER        L, LDA, M, N
  17.  
  18.          DOUBLE         PRECISION A( LDA, * ), TAU( * ), WORK( * )
  19.  
  20. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  21.      These routines are part of the SCSL Scientific Library and can be loaded
  22.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  23.      directs the linker to use the multi-processor version of the library.
  24.  
  25.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  26.      4 bytes (32 bits). Another version of SCSL is available in which integers
  27.      are 8 bytes (64 bits).  This version allows the user access to larger
  28.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  29.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  30.      only one of the two versions; 4-byte integer and 8-byte integer library
  31.      calls cannot be mixed.
  32.  
  33. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  34.      DLATRZ factors the M-by-(M+L) real upper trapezoidal matrix [ A1 A2 ] = [
  35.      A(1:M,1:M) A(1:M,N-L+1:N) ] as ( R 0 ) * Z, by means of orthogonal
  36.      transformations. Z is an (M+L)-by-(M+L) orthogonal matrix and, R and A1
  37.      are M-by-M upper triangular matrices.
  38.  
  39.  
  40. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  41.      M       (input) INTEGER
  42.              The number of rows of the matrix A.  M >= 0.
  43.  
  44.      N       (input) INTEGER
  45.              The number of columns of the matrix A.  N >= 0.
  46.  
  47.      L       (input) INTEGER
  48.              The number of columns of the matrix A containing the meaningful
  49.              part of the Householder vectors. N-M >= L >= 0.
  50.  
  51.      A       (input/output) DOUBLE PRECISION array, dimension (LDA,N)
  52.              On entry, the leading M-by-N upper trapezoidal part of the array
  53.              A must contain the matrix to be factorized.  On exit, the leading
  54.              M-by-M upper triangular part of A contains the upper triangular
  55.              matrix R, and elements N-L+1 to N of the first M rows of A, with
  56.              the array TAU, represent the orthogonal matrix Z as a product of
  57.              M elementary reflectors.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDLLLLAAAATTTTRRRRZZZZ((((3333SSSS))))                                                          DDDDLLLLAAAATTTTRRRRZZZZ((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      LDA     (input) INTEGER
  75.              The leading dimension of the array A.  LDA >= max(1,M).
  76.  
  77.      TAU     (output) DOUBLE PRECISION array, dimension (M)
  78.              The scalar factors of the elementary reflectors.
  79.  
  80.      WORK    (workspace) DOUBLE PRECISION array, dimension (M)
  81.  
  82. FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
  83.      Based on contributions by
  84.        A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
  85.  
  86.      The factorization is obtained by Householder's method.  The kth
  87.      transformation matrix, Z( k ), which is used to introduce zeros into the
  88.      ( m - k + 1 )th row of A, is given in the form
  89.  
  90.         Z( k ) = ( I     0   ),
  91.                  ( 0  T( k ) )
  92.  
  93.      where
  94.  
  95.         T( k ) = I - tau*u( k )*u( k )',   u( k ) = (   1    ),
  96.                                                     (   0    )
  97.                                                     ( z( k ) )
  98.  
  99.      tau is a scalar and z( k ) is an l element vector. tau and z( k ) are
  100.      chosen to annihilate the elements of the kth row of A2.
  101.  
  102.      The scalar tau is returned in the kth element of TAU and the vector u( k
  103.      ) in the kth row of A2, such that the elements of z( k ) are in  a( k, l
  104.      + 1 ), ..., a( k, n ). The elements of R are returned in the upper
  105.      triangular part of A1.
  106.  
  107.      Z is given by
  108.  
  109.         Z =  Z( 1 ) * Z( 2 ) * ... * Z( m ).
  110.  
  111.  
  112. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  113.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  114.  
  115.      This man page is available only online.
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.